package Java面试周阳.指令重排;

public class ReSortSeqDemo {
    int a = 0;
    boolean flag = false;

    public void method01() {
        a = 1;      // 语句一
        flag = true;        // 语句二
    }

    // 多线程环境中线程交替执行，由于编译器重排的存在
    // 两个线程中使用的变量能否保证一致性是无法确定的，结果无法预测
    public void method02() {
        if(flag) {
            a = a + 5; // 语句三
            System.out.println("****retVale:" + a);
        }
    }
}
